package cn.bearspark.api.vo.main.comment;

import cn.bearspark.api.vo.HtmlTextUnparseable;
import cn.bearspark.api.vo.main.user.UserAtVO;
import cn.bearspark.api.vo.main.user.UserSlimVO;
import cn.bearspark.common.enumeration.LikedEnum;
import lombok.Data;

import java.util.List;

/**
 * 层评论的视图对象
 *
 * @author f
 */
@Data
public class LayerCommentVO implements HtmlTextUnparseable {

    /**
     * 评论的 id
     */
    private Long commentId;

    /**
     * 评论的内容
     */
    private String content;

    /**
     * @ 的用户信息集合
     */
    private List<UserAtVO> atUserInfoList;

    /**
     * 发布评论的时间信息
     */
    private String pubTimeInfo;

    /**
     * 点赞数的信息
     */
    private String likeNumInfo;

    /**
     * 用户是否点赞过该评论
     *
     * @see LikedEnum
     */
    private Integer liked;

    /**
     * 被回复评论的用户 id，可以为 null，为 null 表示层评论，不为 null 表示层间评论
     */
    private Long repliedUserId;

    /**
     * 被回复评论的用户名，可以为 null
     */
    private String repliedUserName;

    /**
     * 评论者的用户信息
     */
    private UserSlimVO userInfo;

    @Override
    public long id() {
        return commentId;
    }

}
